Apex ট্রিগার হলো একটি Apex কোড যা স্বয়ংক্রিয়ভাবে কার্যকর হয় যখন Salesforce ডেটাবেজে নির্দিষ্ট ইভেন্ট ঘটে, যেমন নতুন রেকর্ড ইনসার্ট, আপডেট, বা ডিলিট করা হয়। ট্রিগার মূলত Salesforce ডেটাবেজে স্বয়ংক্রিয়ভাবে নির্দিষ্ট কার্যক্রম সম্পাদন করতে ব্যবহৃত হয়, এবং এটি বিভিন্ন ব্যবসায়িক নিয়ম এবং প্রক্রিয়া অটোমেশনে সহায়ক।
Apex ট্রিগার সাধারণত কাস্টম ডেটা প্রসেসিং বা ভ্যালিডেশন করার জন্য ব্যবহৃত হয়, যা Salesforce-এর স্ট্যান্ডার্ড কার্যাবলির মাধ্যমে সম্ভব নয়। নিচে Apex ট্রিগারের কয়েকটি সাধারণ ব্যবহার বর্ণনা করা হলো:
ডেটা ভ্যালিডেশন ও অটোমেশন: কোনো রেকর্ড তৈরি বা আপডেট হওয়ার সময় স্বয়ংক্রিয়ভাবে নির্দিষ্ট ডেটা চেক এবং যাচাই করতে ট্রিগার ব্যবহৃত হয়। যেমন, যদি কোনো ফিল্ডের ভ্যালু একটি নির্দিষ্ট রেঞ্জে না থাকে, তবে তা স্বয়ংক্রিয়ভাবে সংশোধন করা বা নির্দিষ্ট বার্তা প্রদান করা যায়।
ডেটা সম্পর্ক সংরক্ষণ: একাধিক অবজেক্টের মধ্যে সম্পর্কিত ডেটা আপডেট করার জন্য ট্রিগার ব্যবহার করা যায়। উদাহরণস্বরূপ, যখন Opportunity-এর স্ট্যাটাস পরিবর্তন হয়, তখন স্বয়ংক্রিয়ভাবে Account-এর স্ট্যাটাস পরিবর্তন করা।
অডিটিং ও লগিং: ডেটার পরিবর্তন সম্পর্কে অডিটিং বা লগিং করার জন্য ট্রিগার কার্যকর। যেমন, যদি কোনো রেকর্ড ডিলিট করা হয়, তবে ট্রিগার সেটি একটি পৃথক লগে সংরক্ষণ করতে পারে।
নতুন রেকর্ড তৈরি: কোনো অবজেক্টে একটি রেকর্ড তৈরি হলে, সেটির উপর ভিত্তি করে অন্য একটি অবজেক্টে নতুন রেকর্ড তৈরি করতে ট্রিগার ব্যবহার করা যায়। যেমন, নতুন কনট্যাক্ট তৈরি হলে স্বয়ংক্রিয়ভাবে একটি স্বাগত চিঠি পাঠানোর জন্য একটি রেকর্ড তৈরি করা।
ডেটা সামঞ্জস্যতা রক্ষা: ডেটার সামঞ্জস্যতা নিশ্চিত করার জন্য বিভিন্ন অবজেক্টের মধ্যে স্বয়ংক্রিয় সিঙ্ক্রোনাইজেশন পরিচালনা করা। উদাহরণস্বরূপ, একটি ফিল্ডের মান পরিবর্তন হলে অন্য একটি অবজেক্টের ফিল্ডের মানও আপডেট করা।
Apex ট্রিগার তৈরি করতে কিছু ধাপ অনুসরণ করা হয়। সাধারণত ট্রিগার লেখার সময় তার ইভেন্ট, টাইমিং, এবং প্রয়োজনীয় লজিক নির্ধারণ করা হয়। একটি সাধারণ ট্রিগার লেখার কাঠামো নিচে দেখানো হলো:
trigger AccountTrigger on Account (before insert, after insert, before update, after update) {
if (Trigger.isBefore) {
if (Trigger.isInsert) {
// Insert-এর আগে কার্যক্রম
} else if (Trigger.isUpdate) {
// Update-এর আগে কার্যক্রম
}
}
if (Trigger.isAfter) {
if (Trigger.isInsert) {
// Insert-এর পরে কার্যক্রম
} else if (Trigger.isUpdate) {
// Update-এর পরে কার্যক্রম
}
}
}
এখানে AccountTrigger
নামে একটি ট্রিগার তৈরি করা হয়েছে যা Account
অবজেক্টের উপর কার্যকর হয়। এই ট্রিগারটি before insert
, after insert
, before update
, এবং after update
ইভেন্টে কাজ করবে।
ধরুন, আমাদের এমন একটি ট্রিগার দরকার যা Account রেকর্ড তৈরি করার পর একটি কাস্টম ফিল্ডে স্বয়ংক্রিয়ভাবে মান ইনসার্ট করবে।
trigger AccountTrigger on Account (after insert) {
for (Account acc : Trigger.new) {
acc.Custom_Field__c = 'Default Value';
}
update Trigger.new;
}
এই উদাহরণে, AccountTrigger
নামের ট্রিগারটি after insert
ইভেন্টে কাজ করবে। নতুন Account রেকর্ড ইনসার্ট করার পর এটি স্বয়ংক্রিয়ভাবে Custom_Field__c
ফিল্ডে ডিফল্ট মান সেট করবে এবং সেই রেকর্ড আপডেট করবে।
Apex ট্রিগার বিভিন্ন ইভেন্টে কার্যকর করা যায়। প্রধান ইভেন্টগুলো হলো:
Apex ট্রিগার বিভিন্ন ব্যবসায়িক প্রক্রিয়া অটোমেশনে সাহায্য করে এবং Salesforce ডেটাবেজে ডেটা পরিবর্তনের উপর ভিত্তি করে স্বয়ংক্রিয় কার্যক্রম পরিচালনা করে। এর মাধ্যমে ডেটা ভ্যালিডেশন, ডেটা সম্পর্কিত কার্যক্রম, এবং অডিটিং সহজ হয়। Apex ট্রিগারের সাহায্যে একটি ডেটা মডেল কাস্টমাইজড নিয়ম মেনে পরিচালনা করা সহজ এবং কার্যকর হয়।
common.read_more